“AWSWAFFullAccess” のポリシーを付与しているにも関わらず AWS WAF のリソースが表示されません。原因と対処法を教えてください。
コンソールからアクセスする場合は "AWSWAFFullAccess" ではなく "AWSWAFConsoleFullAccess" を付与しましょう。
2024.04.30
困っていたこと
ある IAM ユーザーに AWS 管理ポリシー AWSWAFFullAccess
を付与したのですが、AWS WAF のコンソールへアクセスするとリージョンの一覧が表示されず、ウェブACLを参照できません。原因と対処法を教えてください。
どう対応すればいいの?
WAF のコンソールへアクセスする場合、管理ポリシー AWSWAFFullAccess
ではなく AWSWAFConsoleFullAccess
を付与することで、リージョン一覧およびウェブACLの参照が可能になります。
注意点
AWS 管理ポリシー AWSWAFConsoleFullAccess
には WAFのアクションへの許可のみでなく、 CloudFront や ELB など他サービスの操作権限も含まれます。意図しない権限が含まれていないか、ポリシーの内容をよく確認しましょう。
AWS 管理ポリシー AWSWAFConsoleFullAccess
の内容
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUseOfAWSWAF", "Effect": "Allow", "Action": [ "apigateway:GET", "apigateway:SetWebACL", "cloudfront:ListDistributions", "cloudfront:ListDistributionsByWebACLId", "cloudfront:UpdateDistribution", "cloudwatch:GetMetricData", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics", "ec2:DescribeRegions", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:SetWebACL", "appsync:ListGraphqlApis", "appsync:SetWebACL", "waf-regional:*", "waf:*", "wafv2:*", "s3:ListAllMyBuckets", "logs:DescribeResourcePolicies", "logs:DescribeLogGroups", "cognito-idp:ListUserPools", "cognito-idp:AssociateWebACL", "cognito-idp:DisassociateWebACL", "cognito-idp:ListResourcesForWebACL", "cognito-idp:GetWebACLForResource", "apprunner:AssociateWebAcl", "apprunner:DisassociateWebAcl", "apprunner:DescribeWebAclForService", "apprunner:ListServices", "apprunner:ListAssociatedServicesForWebAcl", "ec2:AssociateVerifiedAccessInstanceWebAcl", "ec2:DisassociateVerifiedAccessInstanceWebAcl", "ec2:DescribeVerifiedAccessInstanceWebAclAssociations", "ec2:GetVerifiedAccessInstanceWebAcl", "ec2:DescribeVerifiedAccessInstances" ], "Resource": "*" }, { "Sid": "AllowLogDeliverySubscription", "Action": [ "logs:CreateLogDelivery", "logs:DeleteLogDelivery" ], "Resource": "*", "Effect": "Allow" }, { "Sid": "GrantLogDeliveryPermissionForS3Bucket", "Action": [ "s3:PutBucketPolicy", "s3:GetBucketPolicy" ], "Resource": [ "arn:aws:s3:::aws-waf-logs-*" ], "Effect": "Allow" }, { "Sid": "GrantLogDeliveryPermissionForCloudWatchLogGroup", "Action": [ "logs:PutResourcePolicy" ], "Resource": "*", "Effect": "Allow", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": [ "wafv2.amazonaws.com" ] } } } ] }